Introduction to Operating Systems & System Structures

Introduction to Operating Systems & System Structures

Introduction

An Operating System (OS) is one of the most important software components in a computer system. It acts as a bridge between computer hardware and users, allowing users to interact with the system efficiently. Without an operating system, a computer would simply be a collection of electronic components unable to perform useful tasks.

Every device we use today—including desktops, laptops, smartphones, tablets, smart TVs, and even smartwatches—relies on an operating system to manage hardware resources, execute programs, provide security, and ensure smooth communication between software and hardware.

Popular operating systems include:

  • Microsoft Windows

  • Linux

  • macOS

  • Android

  • iOS

  • Unix

Operating systems have evolved significantly from simple batch-processing systems to sophisticated distributed and cloud-based operating systems capable of managing millions of users simultaneously.


What is an Operating System?

Definition

An Operating System (OS) is system software that manages computer hardware and software resources while providing services to application programs and users.

Formal Definition

An Operating System is system software that acts as an interface between users and computer hardware by managing resources such as CPU, memory, storage devices, input/output devices, and software applications.


Objectives of an Operating System

The primary objectives of an operating system are:

  • Provide user convenience

  • Efficiently manage hardware resources

  • Execute programs

  • Manage memory

  • Control input/output devices

  • Provide security and protection

  • Manage files and directories

  • Facilitate communication between hardware and software


History and Evolution of Operating Systems

The evolution of operating systems can be divided into several generations.


1. First Generation (1940–1955)

Characteristics

  • No operating system

  • Programs executed manually

  • Machine language programming

  • One program at a time

Examples

  • ENIAC

  • UNIVAC

Problems

  • Very slow

  • Manual operation

  • No automation


2. Second Generation (1955–1965)

Batch Operating Systems

Programs were grouped into batches and executed one after another.

Advantages

  • Reduced manual intervention

  • Better CPU utilization

Disadvantages

  • No interaction with users

  • Long waiting time


3. Third Generation (1965–1980)

Multiprogramming

Multiple programs were kept in memory simultaneously.

Features

  • CPU scheduling

  • Memory management

  • Spooling

  • Time-sharing

Examples:

  • IBM OS/360

  • UNIX


4. Fourth Generation (1980–Present)

Development of

  • Personal computers

  • Graphical User Interface (GUI)

  • Distributed systems

  • Mobile operating systems

  • Cloud operating systems

  • Artificial Intelligence support

Examples

  • Windows 11

  • Ubuntu Linux

  • Android

  • macOS

  • iOS


Types of Operating Systems

Operating systems are classified based on how they manage resources and users.


1. Batch Operating System

Definition

A Batch Operating System collects jobs and executes them sequentially without user interaction.

Characteristics

  • No user interaction

  • Jobs processed in batches

  • Suitable for repetitive tasks

Advantages

  • High throughput

  • Efficient for large jobs

Disadvantages

  • Long waiting time

  • No immediate response

Examples

  • IBM Batch Systems

Applications

  • Payroll processing

  • Bank transactions

  • Utility billing


2. Time-Sharing Operating System

Definition

A Time-Sharing OS allows multiple users to use the computer simultaneously by allocating a small time slice to each process.

Features

  • Multi-user

  • Interactive

  • Fast response

  • CPU scheduling

Advantages

  • Efficient CPU utilization

  • Multiple users simultaneously

Examples

  • UNIX

  • Linux


3. Distributed Operating System

Definition

A Distributed OS manages multiple computers connected through a network and makes them appear as a single system.

Characteristics

  • Resource sharing

  • Transparency

  • Scalability

Advantages

  • High reliability

  • Better performance

  • Load balancing

Examples

  • Amoeba

  • Plan 9


4. Real-Time Operating System (RTOS)

Definition

A Real-Time Operating System processes data within a fixed time limit.

Types

Hard Real-Time

Missing a deadline may cause system failure.

Examples

  • Aircraft systems

  • Medical devices

Soft Real-Time

Occasional deadline misses are acceptable.

Examples

  • Multimedia systems

  • Video conferencing

Popular RTOS

  • VxWorks

  • QNX

  • FreeRTOS


5. Multiprocessor Operating System

Definition

Supports multiple CPUs working together.

Features

  • Parallel processing

  • Increased performance

  • Better reliability

Examples

  • Linux SMP

  • Windows Server


6. Mobile Operating System

Definition

Designed specifically for smartphones and tablets.

Features

  • Touch interface

  • Battery optimization

  • Wireless communication

  • Mobile applications

Examples

  • Android

  • iOS


Components of an Operating System

The operating system consists of several major components.


1. Kernel

Definition

The Kernel is the core component of an operating system that manages hardware resources and provides essential services.

Functions

  • Process management

  • Memory management

  • Device management

  • File system management

  • Interrupt handling

  • CPU scheduling

Types

  • Monolithic Kernel

  • Microkernel

  • Hybrid Kernel

Examples

  • Linux Kernel

  • Windows NT Kernel


2. Shell

Definition

The Shell is a command interpreter that acts as an interface between users and the operating system.

Types

Command Line Shell

Examples

  • Bash

  • PowerShell

  • CMD

Graphical Shell

Examples

  • Windows Explorer

  • GNOME

  • KDE

Functions

  • Execute commands

  • Launch applications

  • Manage files

  • Automate tasks using scripts


3. System Calls

Definition

A System Call is a mechanism through which user programs request services from the operating system kernel.

Categories

Process Control

  • Create process

  • End process

  • Load program

File Management

  • Open file

  • Read file

  • Write file

  • Delete file

Device Management

  • Read device

  • Write device

Information Management

  • Get system information

  • Set system information

Communication

  • Send message

  • Receive message


Operating System Architecture

Operating system architecture determines how different OS components are organized.


1. Monolithic Architecture

Definition

All operating system services run inside one large kernel.

Advantages

  • Fast execution

  • Efficient communication

Disadvantages

  • Difficult maintenance

  • Low modularity

Examples

  • Linux

  • UNIX


2. Layered Architecture

Definition

The operating system is divided into layers, with each layer providing services to the layer above it.

Advantages

  • Easy debugging

  • Better modularity

  • Easier maintenance

Disadvantages

  • Slower than monolithic systems

Example

  • THE Operating System


3. Microkernel Architecture

Definition

Only essential functions remain inside the kernel; all other services run in user space.

Advantages

  • High security

  • Better reliability

  • Easy updates

Disadvantages

  • More communication overhead

  • Slightly slower

Examples

  • MINIX

  • QNX

  • Mach


Services Provided by an Operating System

An operating system offers various services to users and application programs.

1. Program Execution

Loads and executes programs.

2. Process Management

Creates, schedules, and terminates processes.

3. Memory Management

Allocates and deallocates RAM efficiently.

4. File System Management

Creates, deletes, copies, and organizes files.

5. Device Management

Controls printers, disks, keyboards, and other peripherals.

6. Security and Protection

Provides authentication, authorization, and access control.

7. Error Detection

Detects and reports hardware and software errors.

8. Networking

Supports communication over local and global networks.

9. Resource Allocation

Distributes CPU time, memory, and storage among processes.

10. User Interface

Provides GUI and CLI for user interaction.


Booting Process

Definition

Booting is the process of starting a computer and loading the operating system into main memory (RAM).


Types of Booting

Cold Boot

Starting the computer from a powered-off state.

Warm Boot

Restarting the computer without turning off the power.


Windows Booting Process

  1. Power button pressed.

  2. BIOS or UEFI initializes hardware.

  3. POST (Power-On Self-Test) checks hardware components.

  4. Bootloader (Windows Boot Manager) is loaded.

  5. Windows kernel (ntoskrnl.exe) is loaded into memory.

  6. Device drivers are initialized.

  7. User login screen appears.

  8. Desktop environment loads.


Linux Booting Process

  1. Power on.

  2. BIOS/UEFI initialization.

  3. POST.

  4. GRUB bootloader starts.

  5. Linux Kernel loads.

  6. init or systemd starts.

  7. Services and daemons are initialized.

  8. Login prompt or graphical desktop appears.


Booting Process Flow Diagram

Power ON
     │
     ▼
BIOS / UEFI
     │
     ▼
POST
     │
     ▼
Boot Loader
     │
     ▼
Kernel Loaded
     │
     ▼
Drivers Loaded
     │
     ▼
System Services Started
     │
     ▼
Login Screen
     │
     ▼
Desktop Ready

Basic Command-Line Interface (CLI) Commands

Windows CMD

CommandPurpose
dirList files and folders
cdChange directory
mkdirCreate a new folder
rmdirRemove a folder
copyCopy files
delDelete files
clsClear screen
ipconfigDisplay IP configuration
tasklistShow running processes
shutdown /sShut down the computer

Linux Terminal

CommandPurpose
pwdShow current directory
lsList files
cdChange directory
mkdirCreate a directory
rmRemove files
cpCopy files
mvMove or rename files
catDisplay file contents
topMonitor running processes
df -hShow disk usage
free -hDisplay memory usage

Practical Activities

Activity 1: Research Different Types of Operating Systems

Objective: Understand various operating systems and their applications.

Operating System TypeExampleCommon Use
BatchIBM Batch SystemsPayroll processing
Time-sharingLinuxMulti-user servers
DistributedAmoebaCluster computing
Real-timeFreeRTOSEmbedded systems
MultiprocessorWindows ServerData centers
MobileAndroidSmartphones

Activity 2: Identify OS Components

Kernel

  • Manages CPU, memory, and devices.

  • Runs in privileged mode.

Shell

  • Accepts user commands.

  • Launches programs and scripts.

System Calls

  • Provide controlled access to kernel services such as file operations, process creation, and device communication.


Activity 3: Demonstrate the Booting Process

Windows

  1. Restart the computer.

  2. Observe BIOS/UEFI logo.

  3. Watch the Windows loading screen.

  4. Log in and open Task Manager to view running system processes.

Linux

  1. Restart the computer.

  2. Observe the GRUB menu.

  3. Boot into Linux.

  4. Use the following commands:

    systemctl status
    dmesg | less
    journalctl -b
    

    to inspect boot and system logs.


Activity 4: Compare OS Architectures

FeatureMonolithicLayeredMicrokernel
PerformanceExcellentGoodModerate
SecurityModerateGoodExcellent
ModularityLowHighVery High
Fault IsolationLowModerateHigh
ExampleLinuxTHE OSMINIX

Activity 5: Execute Basic CLI Commands

Windows (CMD)

dir
cd Documents
mkdir DemoFolder
echo Hello > demo.txt
copy demo.txt DemoFolder
tasklist
ipconfig

Linux (Terminal)

pwd
ls
mkdir demo
cd demo
touch sample.txt
echo "Hello Linux" > sample.txt
cat sample.txt
df -h
free -h

Advantages of Operating Systems

  • Simplifies computer usage.

  • Efficiently manages hardware resources.

  • Supports multitasking and multi-user environments.

  • Provides security and data protection.

  • Offers user-friendly interfaces.

  • Enables networking and communication.

  • Supports application software execution.


Disadvantages of Operating Systems

  • Can consume significant system resources.

  • May introduce security vulnerabilities if not updated.

  • Licensing costs for some commercial operating systems.

  • Hardware compatibility issues may arise.

  • Complex operating systems require regular maintenance and updates.


Summary

An Operating System is the foundation of every modern computing device. It manages hardware, provides services to applications, and offers an interface for users. Over the years, operating systems have evolved from simple batch-processing systems to sophisticated platforms supporting distributed computing, real-time processing, multiprocessor systems, and mobile devices. Understanding OS components such as the Kernel, Shell, and System Calls, along with architectures like Monolithic, Layered, and Microkernel, is essential for students and professionals. Knowledge of the booting process and command-line tools further strengthens practical system administration and troubleshooting skills.


Frequently Asked Questions (FAQs)

1. What is an Operating System?

An Operating System is system software that manages computer hardware, software resources, and provides services to application programs.

2. What is the difference between a Kernel and a Shell?

The Kernel is the core component that directly manages hardware and system resources, whereas the Shell provides the interface through which users interact with the operating system.

3. What are System Calls?

System calls are programmed interfaces that allow user applications to request services from the operating system kernel, such as file access, process creation, and memory management.

4. What is the purpose of the booting process?

The booting process initializes hardware, loads the operating system kernel into memory, starts essential services, and prepares the system for user interaction.

5. Which OS architecture is the most secure?

Microkernel architecture is generally considered the most secure because it keeps only essential services inside the kernel, reducing the trusted computing base and improving fault isolation.

Comments